<?php

/**
 * factura actions.
 *
 * @package    kernel
 * @subpackage factura
 * @author     Your name here
 * @version    SVN: $Id: actions.class.php 2288 2006-10-02 15:22:13Z fabien $
 */
class facturaActions extends autofacturaActions
{
	public function executeGenerarPdf()
	{
		$id = $this->getRequestParameter('id');
// 		$id = $this->getRequestParameter('id');
// 		$cont = $this->getTextoContrato($id);
// 		$id = $this->getRequestParameter('id');
		$pdf = new ReportePdf('P','mm',array(210,135));
		$pdf->SetAutoPageBreak(true,20);
		$pdf->setLogo('/configuracion/logo-empresa.png');
		$pdf->SetFont("FreeSerif", "", 10);
		$pdf->SetTitulo("Factura de servicios");
		$pdf->Setempresa("5inco - ACC");
		$pdf->SetFillColor(225,225,225);
		$pdf->SetFechaConsulta(date('Y-m-d H:i'));
		$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
		$pdf->setHeaderFont(array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
		$pdf->setFooterFont(array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));
		$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
		$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
		$tmp = str_pad($id,19,'0',STR_PAD_LEFT);
		$pdf->setDocNumero($tmp);

		$factura = FacturacionFacturaPeer::retrieveByPk($id);
		$tercero = $factura->getKernelTercero();
		$fecha = $factura->getFecha();


		// init pdf doc
		$pdf->AliasNbPages();
		$pdf->AddPage();
		$y = $pdf->GetY();
		$pdf->Cell(80, 5, $tercero);
		$pdf->Ln(); 
		$pdf->Cell(80, 5, "Fecha : ".$fecha);
		$pdf->Output();
		return sfView::NONE;
	}

	
	protected function saveFacturacionFactura($facturacion_factura)
	{
		if($facturacion_factura->isNew())
		{
			$facturacion_factura->setFechaCreacion(date('Y-m-d H:i'));
		}
		$estado = $facturacion_factura->save();	
		return $estado;
	}

  protected function addFiltersCriteria($c)
  {
    
     if (isset($this->filters['cedula']) && $this->filters['cedula'] !== '')
      {
      $c->addJoin(KernelTerceroPeer::ID, FacturacionFacturaPeer::TERCERO_ID);
      $c->add(KernelTerceroPeer::IDENTIFICACION, $this->filters['cedula']);
    }
    
    if (isset($this->filters['fecha_is_empty']))
    {
      $criterion = $c->getNewCriterion(FacturacionFacturaPeer::FECHA, '');
      $criterion->addOr($c->getNewCriterion(FacturacionFacturaPeer::FECHA, null, Criteria::ISNULL));
      $c->add($criterion);
    }
    else if (isset($this->filters['fecha']))
    {
      if (isset($this->filters['fecha']['from']) && $this->filters['fecha']['from'] !== '')
      {
        $criterion = $c->getNewCriterion(FacturacionFacturaPeer::FECHA, date('Y-m-d', $this->filters['fecha']['from']), Criteria::GREATER_EQUAL);
      }
      if (isset($this->filters['fecha']['to']) && $this->filters['fecha']['to'] !== '')
      {
        if (isset($criterion))
        {
          $criterion->addAnd($c->getNewCriterion(FacturacionFacturaPeer::FECHA, date('Y-m-d', $this->filters['fecha']['to']), Criteria::LESS_EQUAL));
        }
        else
        {
          $criterion = $c->getNewCriterion(FacturacionFacturaPeer::FECHA, date('Y-m-d', $this->filters['fecha']['to']), Criteria::LESS_EQUAL);
        }
      }

      if (isset($criterion))
      {
        $c->add($criterion);
      }
    }
  }
}
